#ifndef TILE_H_
#define TILE_H_

#include "render.h"
#include "collision.h"

typedef struct{	
	SE_image *timage;/*textura del tile*/
	float xt,yt;/*posicion de la porcion de textura*/
	float wt,ht;/*tamaño de la porcion de textura*/
}SE_tile;

typedef struct{		
	SE_tile *tiles;/*tiles a dibujar*/	
	int numimages;/*numero de imagenes del tilemap*/
	int *mapimage;/*mapa de las imagenes*/
	int *mapcoll;/*mapa de colisiones*/
	
	int wtile,htile;/*ancho y alto de cada tile*/
	int numtilex,numtiley;/*cantidad de tiles en x e y en el mapa*/
	int numtile;/*numero total de tiles*/

}SE_tilemap;


SE_tilemap *SE_tilemap_init(int wtile,int htile,int numtilex,int numtiley);

void SE_tilemap_addimage_segment(SE_tilemap *tm,SE_image *img,float xtex,float ytex,float wtex,float htex);

void SE_tilemap_addimage(SE_tilemap *tm,SE_image *img);

void SE_tilemap_loaddata(SE_tilemap *tm,char *path);

void SE_tilemap_loadmapimage(SE_tilemap *tm,char *path);

void SE_tilemap_loadmapcoll(SE_tilemap *tm,char *path);


void SE_tilemap_imgdraw(SE_tilemap *tm,int pos,float x,float y,float z);



void SE_tilemap_draw(SE_tilemap *tm,float posx,float posy,float posz);

int xy(int x,int y,int numtilesx,int numtilesy);

void printvalues(SE_tilemap *tm);

/*colision con una caja de colision*/
int SE_tilemap_collision(SE_tilemap *tm,SE_box *box,float posx,float posy,int jumping);

/*dibuja cajas de colision de cada tile*/
void SE_tilemap_drawbox(SE_tilemap *tm,float posx,float posy);





















#endif
